/*
 * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
 * Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template
 */
package com.yxw.live_vod_backend_boot.dto;

import com.yxw.live_vod_backend_boot.entity.YxLiveViolationEntity;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
//import lombok.EqualsAndHashCode;



/*** 
*@author Jiaxu.Huang
*@date 2023/12/5 16:31:56
*@update 2023/12/5 16:31:56
**/
@Data
//@EqualsAndHashCode(callSuper = true)
public class YxLiveViolationAddDTO implements Serializable
{
    private static final long serialVersionUID = 21701765116919L;

    /**
    *违规原因
    */
    @NotBlank(message = "违规原因不能为空")
    @ApiModelProperty(value = "违规原因")
    private String violationReson;
    /**
    *违规说明
    */
    @NotBlank(message = "违规说明不能为空")
    @ApiModelProperty(value = "违规说明")
    private String violationDescrption;
    /**
    * 处罚类别:0罚款,1直播流,2直播间
    */
    @NotNull(message = "处罚类别不能为空")
    @ApiModelProperty(value = " 处罚类别:0罚款,1直播流,2直播间")
    private Integer punishType;
    /**
    * 处罚数量
    */
    @NotNull(message = "处罚数量不能为空")
    @ApiModelProperty(value = " 处罚数量")
    private Integer punishQuantity;
    /**
    * 处罚单位: (处罚类别为0罚款)视频币,(处罚类别为1直播流,中断直播)分钟,(处罚类别为2直播间,禁播)天
    */
    @ApiModelProperty(value = " 处罚单位: (处罚类别为0罚款)视频币,(处罚类别为1直播流,中断直播)分钟,(处罚类别为2直播间,禁播)天")
    private String punishUnit;
    /**
    *创建时间
    */
    @ApiModelProperty(value = "创建时间")
    private java.util.Date createTime;
    /**
    *修改时间
    */
    @ApiModelProperty(value = "修改时间")
    private java.util.Date updateTime;
    /**
    *将DTO转换为ENTITY
    */
    public YxLiveViolationEntity ConverToEntity()
    {
        YxLiveViolationEntity oYxLiveViolationEntity = new YxLiveViolationEntity ();
        oYxLiveViolationEntity.setViolationReson(violationReson);
        oYxLiveViolationEntity.setViolationDescrption(violationDescrption);
        oYxLiveViolationEntity.setPunishType(punishType);
        oYxLiveViolationEntity.setPunishQuantity(punishQuantity);
        oYxLiveViolationEntity.setPunishUnit(punishUnit);
        oYxLiveViolationEntity.setCreateTime(createTime);
        oYxLiveViolationEntity.setUpdateTime(updateTime);
        return oYxLiveViolationEntity;
    }
}